﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using WeMakeSP.Platform.Core.BusinessEntities;

namespace WeMakeSP.ImageResizer.Configuration
{
    /// <summary>
    /// This class holds the configuration of the image
    /// resizer component for a picture library.
    /// </summary>
    public class PictureLibraryPropertyBag : BusinessEntityBase
    {
        #region Constants

        /// <summary>
        /// The configuration prefix.
        /// </summary>
        public const string Prefix = "wemakesp.imageresizer";

        #endregion

        #region Public Properties

        /// <summary>
        /// Gets or sets the action.
        /// </summary>
        /// <value>The action.</value>
        public string Action
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the hours delay.
        /// </summary>
        /// <value>The hours delay.</value>
        public int HoursDelay
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the hour schedule.
        /// </summary>
        /// <value>The hour schedule.</value>
        public int HourSchedule
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the width of the max.
        /// </summary>
        /// <value>The width of the max.</value>
        public int MaxWidth
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the height of the max.
        /// </summary>
        /// <value>The height of the max.</value>
        public int MaxHeight
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the minutes delay.
        /// </summary>
        /// <value>The minutes delay.</value>
        public int MinutesDelay
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the minute schedule.
        /// </summary>
        /// <value>The minute schedule.</value>
        public int MinuteSchedule
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the mode.
        /// </summary>
        /// <value>The image resizer mode.</value>
        public string Mode
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the schedule.
        /// </summary>
        /// <value>The schedule.</value>
        public string Schedule
        {
            get;
            set;
        }

        /// <summary>
        /// Gets or sets the seconds delay.
        /// </summary>
        /// <value>The seconds delay.</value>
        public int SecondsDelay
        {
            get;
            set;
        }

        #endregion
    }
}
